package homework.mission2;

public class FindNum {
    public static void main(String[] args) {
        /**
         * 做一个 1 - 999 的循环
         * 并逐一判断每个数字是否符合要求，符合的话，打印
         */
        for (int i = 1; i < 1000; i++) {
            if(justify(i)) {
                System.out.println(i);
            }
        }
    }

    /**
     *
     * @param num
     * @return true: 完数, false: 不是完数
     */
    public static boolean justify(int num) {
        int sum = 0;
        for (int i = 1; i < num; i++) {
            /**
             * 如果 num % i == 0 表示 i 可以被 num 整除, 则 i 为 num的因子
             * 把num 因子相加
             * 最后把 num 的因子相加的和与 num 做比较，如果相等，就是完数
             */
            if(num % i == 0) {
                sum += i;
            }
        }

        return sum == num;
    }
}
